
#include <iostream>
#include <thread>

void func() { std::cout << "Hello\n"; }

class Test {
public:
    void worker() { std::cout << "Worker function\n"; }
};


int main() {
    std::thread t1(func);     // ✅ 直接使用函数名
    std::thread t2(&func);    // ✅ 也可以加 &
    t1.join();
    t2.join();

    // ❌ 错误：尝试直接传递成员函数
    // std::thread t(Test::worker);  // 编译错误！
    Test obj;
    std::thread t(&Test::worker, &obj);
    t.join();
}

